Verification of protocols with loops

نویسندگان

  • Steve Kremer
  • Fr
چکیده

Indemnisation The internship is supported by the European grant ProS-ecure (ERC Starting Grant) and the ANR grant VIP (Programme JCJC). Context. Security protocols are distributed programs that aim at ensuring security properties, such as confidentiality, authentication or anonymity, by the means of cryptography. Such protocols are widely deployed, e.g., for electronic commerce on the Internet, in banking networks, mobile phones and more recently electronic elections. As properties need to be ensured, even if the protocol is executed over untrusted networks (such as the In-ternet), these protocols have shown extremely difficult to get right. Formal methods have shown very useful to detect errors and ensure their correct-ness. Many automated tools exist for analyzing protocols. However, while classical authentication protocols are a simple sequence of inputs and outputs, recent protocols tend to have more complicated program structures. One such example are protocols which include loops. For instance the TESLA protocol [PCTS00] is a broadcast stream authentication protocol which sends a stream of data in a loop without a bound on the number of iterations. Automatically analyzing such a protocol is out of the scope of most existing tools. Recently, a new tool, called tamarin [SMCB12, SMCB12], has been proposed. In contrast to most other fully automated tools it allows a user to interact with it and guide the tool in order to avoid non-termination. (Note that non-termination is unavoidable as the problem of verifying security protocols is undecidable in general.) It has been shown that the tool is indeed able to analyze protocols such as TESLA. However, a shortcoming of tamarin is that its input language, labelled multiset rewriting rules, is a very low level language. This makes the process of specifying protocols a difficult, error-prone task yielding specifications that are difficult to read. To overcome this shortcoming we recently presented a tool [KK13] which translates specifications written in a high-level specification language, a variant of the applied pi calculus, into the input language of tamarin, using tamarin as a backend.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

A short introduction to two approaches in formal verification of security protocols: model checking and theorem proving

In this paper, we shortly review two formal approaches in verification of security protocols; model checking and theorem proving. Model checking is based on studying the behavior of protocols via generating all different behaviors of a protocol and checking whether the desired goals are satisfied in all instances or not. We investigate Scyther operational semantics as n example of this...

متن کامل

Usage of Invariants for Symbolic Verification of Requirements

The main goal of the paper is finding of preand post-invariants for transitions between symbolic states in the system that must be verified and use them for verification purposes. Systems are specified by basic protocols [1]. This specification defines a transition system with transitions s → s′ where s and s′ are symbolic states, b is a basic protocol. The main problem of verification is a rea...

متن کامل

Automatic Verification of Directory-Based Consistency Protocols

We propose a symbolic verification method for directorybased consistency protocols working for an arbitrary number of controlled resources and competing processes. We use a graph-based language to specify in a uniform way both client/server interaction schemes and manipulation of directories that contain the access rights of individual clients. Graph transformations model the dynamics of a give...

متن کامل

Automatic Verification of Directory-Based Consistency Protocols with Graph Constraints

We propose a symbolic verification method for directory-based consistency protocols working for an arbitrary number of controlled resources and competing processes. We use a graph-based language to specify in a uniform way both client/server interaction schemes and manipulation of directories that contain the access rights of individual clients. Graph transformations model the dynamics of a giv...

متن کامل

Web Service Choreography Verification Using Z Formal Specification

Web Service Choreography Description Language (WS-CDL) describes and orchestrates the services interactions among multiple participants. WS-CDL verification is essential since the interactions would lead to mismatches. Existing works verify the messages ordering, the flow of messages, and the expected results from collaborations. In this paper, we present a Z specification of WS-CDL. Besides ve...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2013